package io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.ObjectInputStream;

/*
使用对象输入流进行对象的反序列化
 */
public class OISDemo {
    public static void main(String[] args) throws Exception {
        FileInputStream fis = new FileInputStream("person.obj");
        ObjectInputStream ois = new ObjectInputStream(fis);
        /*

        只需要关最外层的流就可以 它会一层一层关,所以不用关fis.close()
        /*
            对象输入流提供了反序列化操作
            Object readObject()
            反序列化后的对象都是以Object类型返回的，所以实际接收后要向下造型得到实际的原型。
            向下造型(强制类型转换)
         */

        Person p = (Person) ois.readObject();//不用Object接受是为了接下来能用,p.出来person里面的东西
        System.out.println(p);

        ois.close();
    }
}
